package com.qys.livesMall.system.controller.sys;

import com.qys.livesMall.common.result.R;
import com.qys.livesMall.framework.view.QysPage;
import com.qys.livesMall.system.model.dto.template.AddTemplate;
import com.qys.livesMall.system.model.dto.template.EditTemplate;
import com.qys.livesMall.system.model.dto.template.TemplateSearch;
import com.qys.livesMall.system.model.vo.template.TemplateVO;
import com.qys.livesMall.system.service.H2TemplateService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 *
 *  后台管理-模板管理
 *
 *
 * @author wzy
 * @since 2023-04-27
 */
@RestController
@RequestMapping("/sys/template")
public class H2TemplateController {

    @Autowired
    private H2TemplateService templateService;

    /**
     * 模板信息分页查询
     */
    @PostMapping("/list")
    public R<QysPage<TemplateVO>> list(@RequestBody TemplateSearch search) {
        return R.ok(templateService.search(search));
    }

    /**
     * 新增
     * @param template
     * @return
     */
    @PostMapping("/add")
    public R add(@RequestBody AddTemplate template){

        return templateService.add(template);
    }

    /**
     * 修改
     * @param template
     * @return
     */
    @PutMapping("/edit")
    public R edit(@RequestBody EditTemplate template){
        return templateService.edit(template);
    }

    /**
     * 删除
     * @param id
     * @return
     */
    @DeleteMapping("/{id}")
    public R del(@PathVariable Long id){
        return templateService.del(id);
    }
    /**
     * 打开关闭
     * @param template
     * @return
     */
    @PostMapping("/onOrOff")
    public R onOrOff(@RequestBody EditTemplate template){
        return templateService.onOrOff(template.getId(),template.getStatus());
    }

    /**
     * 获取模板下拉列表
     * @param type 模板类型
     * @return
     */
    @GetMapping("/getByType")
    public R getAll(String type){
        return R.ok(templateService.listAll(type));
    }


}
